//
//  WBTitleButton.swift
//  记忆微博
//
//  Created by phoenix on 2017/5/17.
//  Copyright © 2017年 phoenix. All rights reserved.
//

import UIKit

class WBTitleButton: UIButton {

    /// 重载构造函数
    ///
    /// - Parameter title: title - 如果是nil 就显示首页，不为nil，显示title和箭头图像
    init(title: String?){
    
        super.init(frame: CGRect())
        

        // 1> 判断title 是否为 nil
        if title == nil {
            setTitle("首页", for: [])
        } else {
            setTitle(title! + "", for: [])
            
            // 设置图像
            setImage(UIImage(named: "navigationbar_arrow_down"), for: [])
            setImage(UIImage(named: "navigationbar_arrow_up"), for: .selected)
            
        }
        
        // 2> 设置字体和颜色
        titleLabel?.font = UIFont.boldSystemFont(ofSize: 17)
        setTitleColor(UIColor.darkGray, for: [])
        
        // 3> 设置图像
        sizeToFit()


    }
    
    required init?(coder aDecoder: NSCoder) {
    fatalError("init(coder:) has not been implemented")
    }
    
    /// 重新布局子视图
    override func layoutSubviews() {
        super.layoutSubviews()
        
        // 判断 label 和 imageView 是否同时存在
        guard let titleLabel = titleLabel,
            let imageView = imageView else {
            return
        }
        // 不要做加法，直接将他的位置固定 因为会多次调用
        titleLabel.frame.origin.x = 0
        imageView.frame.origin.x = titleLabel.frame.size.width

    }
    
}


